package com.cema.manage.project.android.service;

import com.baomidou.mybatisplus.service.IService;
import com.cema.manage.project.android.model.LoginVo;
import com.cema.manage.project.android.model.PageVo;
import com.cema.manage.project.android.model.result.BizFriend;
import com.cema.manage.project.android.model.result.BizRankingList;
import com.cema.manage.project.manage.users.domain.Users;

import java.util.List;
import java.util.Map;

public interface BizUserService extends IService<Users> {
    /**
     * 用户反馈
     *
     * @param usId
     * @param content
     * @return
     */
    boolean userFeedback(Integer usId, String content);

    /**
     * 注册并登录
     *
     * @param loginVo
     * @param ip
     * @return
     */
    Users registerUser(LoginVo loginVo, String ip);

    /**
     * 注册并登录
     *
     * @param loginVo
     * @param ip
     * @return
     */
    Users registerUserNew(LoginVo loginVo, String ip);

    /**
     * 我的团队总人数
     *
     * @param usId
     * @return
     */
    Map<String, Integer> countFriend(Integer usId);

    /**
     * 我的团队
     *
     * @param usId
     * @param pageVo
     * @return
     */
    List<BizFriend> queryBizFriend(Integer usId, Integer effective, PageVo pageVo);

    /**
     * 签到定时认识
     */
    void taskSignIn();

    /**
     * 保存用户支付宝信息
     *
     * @param users
     * @return
     */
    boolean saveAfbInfo(Users users,String uvChannel);

    /**
     * 今日统计
     *
     * @param usId
     * @return
     */
    Map<String, Integer> toDayStatistics(Integer usId);

    /**
     * 更新用户昵称
     *
     * @param users
     * @return
     */
    boolean updateNickname(Users users);

    /**
     * @param userId
     * @return
     */
    Map<String, Object> queryTheCharts(Integer userId);

    /**
     * @param userId
     * @param index
     * @return
     */
    List<BizRankingList> queryTheCharts(Integer userId, Integer index);
}
